<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <!-- 
        1. 内建对象
            Array, Boolean, Date, Math, Number,String, RegExp, Functions, Events
        2.宿主对象
        3.自定义对象

        数组
            也是一个对象，可以存储值；不同的是普通对象，通过字符串作为属性名，而数组用数字作为索引（index）操作元素 
            数组的存储性能比普通对象好

        索引（index) : 从0开始的整数
     -->
    <script>
        var obj = {
            name: 'jack',
            age: 23
        }

        console.log(obj['name']);
        console.log(obj['age']);

        //   创建数组  
        var arr = new Array();
        // 添加元素：数组[索引] = 值
        arr[0] = 123;
        arr[1] = 234;
        arr[2] = 567;
        console.log(arr);
        console.log(arr[0]);
        console.log(arr.length); // 3   连续数组，length为数组长度（元素个数）
        arr[10] = 443;
        // 尽量不要创建非连续的数组
        console.log(arr.length); // 11  非连续数组： 最大索引 +1   

        // 修改length值
        arr.length = 10;
        console.log(arr); // 多余的长度会空着
        arr.length = 2;
        console.log(arr); // 超出的被删除
        //向数组最后一位添加元素
        arr[arr.length] = 890;

        var arr1 = new Array(12, 34, 565);
        console.log(arr1);
        // 创建一个长度为10的数组
        var arr2 = new Array(10);
        console.log(arr2);
    </script>

</body>

</html>